exit
就直接不見了FROM golang:1.19-alpine
WORKDIR /app
COPY go.mod ./
COPY go.sum ./
RUN go mod download
COPY . ./
RUN go build -o /go-web
EXPOSE 8080
CMD [ "/go-web" ]
WORKDIR
是在Docker裡面設置一個區域,告訴docker以後所有子目錄都放在這個底下COPY
把目前本地端的檔案COPY進去Docker裡,上面的./
就是在 APP
底下
RUN
是指說我要在Docker裡面跑甚麼指令 因為我要讓她下載module 所以要 go mod download
EXPOSE 8080
是指把8080 port 從 docker 裡面對外開放--tag [NAME]
指說這個image要叫做甚麼名稱docker build --tag go-web .
docker image ls
就可以看到我們剛剛編寫的 Image 了docker image ls
--pubish [外部]8080:[內部]8080
是指把docker的 8080 port 對應到外部的8080 portdocker run --publish 8080:8080 go-web